This patent document contains material subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document, as it appears in the U.S. Patent and Trademark Office patent files or records, but otherwise reserves all copyright rights whatsoever.
1. Field of the Invention
The present invention relates generally to hard disk drives, and more particularly, to techniques for improving hard disk drive performance.
2. Description of Background Information
Hard disk drives store information as magnetization patterns on magnetic media and are common components in today""s personal computers. Typically, hard disk drives are the primary non-volatile storage location for both user data and software program data.
FIG. 1 is a diagram illustrating a conventional host computer system and its hard drive. Host computer system 12 includes fast access solid state memory 16, computer system bus 20, and CPU 18. Memory 16 is a solid-state semiconductor memory such as a dynamic random access memory (DRAM) that stores the data being manipulated by CPU 18. For example, memory 16 may store application code 32, operating system code 24, or user data 25. CPU 18 and memory 16 communicate with one another over bus 20.
Host computer 12 may read or write data from/to DRAM 16 to disk drive 10. Read or write commands from host computer 12 are received and interpreted by controller 26. Controller 26 controls spindle and actuator drivers 28 to read or write data to one or more magnetic platters in hard disk array (HDA) 30.
To increase performance, disk drive 10 may include a solid-state memory cache 32. In operation, data read from HDA 30, as well as being transferred to host system 12, is also placed in cache 32. If a subsequent disk read from computer system 12 requests data stored in cache 32, controller 26 retrieves the data from the faster cache memory 32 instead of the slower HDA 30. Because cache memory 32 is comprised of high-speed memory, when data requested by host system 12 is present in cache memory 32 (i.e., a xe2x80x9ccache hitxe2x80x9d), controller 26 is able to quickly access and return the requested data. Thus, cache memory 32 improves the overall performance of the disk drive.
Cache memory 32 is significantly more expensive per storage bit than data stored on the magnetic platters of HDA 30. The issue of cost therefore tends to limit the size of on-disk cache 32. Thus, there is a need in the art to increase disk drive performance without unduly increasing the cost of the disk drive.
An object of the present invention is to increase the performance of a hard disk drive without increasing the cost of the disk drive.
One aspect of the present invention is a computer system comprising a plurality of components. In particular, the computer system includes a hard disk drive, a random access memory, a virtual disk, and a processor. The random access memory stores operating system data and user data. The virtual disk models physical parameters of the hard disk drive. The processor optimizes data requests to the hard disk drive based on the physical parameters modeled by the virtual disk.
A second aspect of the present invention is a method for optimizing the perceived performance of a hard disk drive. The method comprises modeling physical parameters of the hard disk drive at a location external to the hard disk drive and optimizing data requests to the hard disk drive based on the modeled physical parameters.
A third aspect of the present invention is a computer readable medium containing computer instructions executable by a computer, the computer being coupled to a hard disk drive. The computer instructions, when executed by the computer, perform the steps of modeling physical parameters of the hard disk drive at a location external to the hard disk drive and optimizing data requests to the hard disk drive based on the modeled physical parameters.